6-8

CountDownLatch latch = new CountDownLatch(n);
ExecutorService exec = Executors.newFixedThreadPool(poolSize);
for (int i = 0; i < n; i++) 
    exec.execute(new MyTask(latch));

6-9
Collections.synchronizedList(new ArrayList());